In a typical three-dimensional (3D) measurement/reconstruction system, an object of interest is illuminated by a laser, an image of the object illuminated by the laser is acquired, and the position of the laser beam in the acquired image is detected. The accuracy of the 3D measurement/reconstruction depends on the accuracy of the detected position of the laser beam in the acquired image.
A common technique used to detect the position of a laser beam in an image is to determine the center of gravity of a laser peak in an intensity profile. A window of fixed size is moved across the intensity profile and for each window position, a sum or average of the pixel intensities in the window is computed. Window positions having a sum (average) of pixel intensities below a predefined threshold are discarded. Among the remaining window positions, the window position having the highest sum (average) of pixel intensities is selected and the center of gravity of the selected window position is returned as the detected laser position.
This technique has several limitations and is therefore not suitable for certain applications. For example, the technique is very sensitive to variations in the background intensity (DC offset) of the intensity profile. In addition, the effectiveness of the technique is highly dependent on the choice of the size of the window and the technique lacks robustness with regards to saturated peaks and large variations in peak widths. Therefore, there is a need for an improved method for detecting the position of a laser beam in an image.